package com.itheima.inter2;

public class Demo01 {
    public static void main(String[] args) {
        InterAImpl interA = new InterAImpl();
        interA.sing();
        interA.dance();
        interA.rap();


    }

}

interface  InterA{
    void sing();
    void dance();
    default void rap(){
        freestyle();
        //...
    }

    private void freestyle() {
        System.out.println("即兴来一段freestyleA");
    }

    default void rap2(){
        freestyle();
        //...
    }
    public static void basketball(){
        System.out.println("我爱篮球");
    }
}
interface  InterB{
    void sing();
    void dance();
    default void rap(){
        System.out.println("即兴来一段freestyleB");
    }
}

class InterAImpl implements InterA,InterB{

    @Override
    public void sing() {
        System.out.println("只因你太美");
    }

    @Override
    public void dance() {
        System.out.println("蹦跶一晚上");
    }
    /*
    如果两个接口中定义了相同的 默认方法
    作为实现类  必须要重写 接口中的默认方法
     */
    @Override
    public void rap() {
        System.out.println("你俩都起开,听我的");
    }
}
class InterAImpl2 implements InterA{

    @Override
    public void sing() {
        System.out.println("只因你太美");
    }

    @Override
    public void dance() {
        System.out.println("蹦跶一晚上");
    }
}